home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / sisl23s.zip / SISLITE.DOC < prev    next >
Text File  |  1992-07-15  |  74KB  |  2,243 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.                       SHAREWARE INSTALLATION SYSTEM LITE
  12.  
  13.  
  14.                                   Version 2.2
  15.  
  16.  
  17.                                    (C) 1992
  18.  
  19.  
  20.                             by Scanlon Enterprises
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.        The Shareware Concept :
  30.  
  31.        The shareware concept has made it possible for you to obtain 
  32.        extremely powerful software at a price you can afford, and it 
  33.        gives you the opportunity to try the software before you buy.
  34.  
  35.        Shareware is kept alive by your support, Thank you !
  36.  
  37.  
  38.  
  39.        For Comments and / or suggestions, please contact
  40.  
  41.                                   SCANLON ENTERPRISES
  42.                                   38354 17TH ST. E.
  43.                                   PALMDALE, CA 93550
  44.  
  45.  
  46.  
  47.        Emergency problems, call (805) 272-4827
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.                 Shareware Installation System Lite     PAGE 2
  57.  
  58.        Shareware Installation System Lite, will be referred to as SIS 
  59.        from this point on.
  60.  
  61.        This product is designed to aid the Author / developer in making 
  62.        their software easy to install. This product uses the command 
  63.        file approach to installation ease. By this, we mean, that the 
  64.        Author or developer creates an installation command file, which 
  65.        is read in by this product for later recall.
  66.  
  67.        The user or client, starts the installation process by entering 
  68.        the new product name, such as INSTALL from a DOS prompt.
  69.  
  70.        The Author or developer, initializes a new installation program, 
  71.        by entering the product name, followed by the command line 
  72.        switch, of '/I'. The 'I' may be either upper or lower case. Once 
  73.        the Author or developer starts SIS, SIS will prompt for a new 
  74.        command file, a new password (this protects the Authors command 
  75.        set from being changed after installation) and a new file name 
  76.        (which may be the same as the previous). Passwords are limited to 
  77.        16 characters, upper and lower case (even spaces).
  78.  
  79.        When the user or Client starts SIS, they will be prompted, based 
  80.        upon the Author or developer commands installed at the time. In 
  81.        this manner, the Author or developer retains full control of the 
  82.        installation process.
  83.  
  84.        The product name upon shipping is SISLITE (with a COM extension). 
  85.        All variations of this product will carry a 'COM' extension. 
  86.        Because of this extension and file type, no SIS product can be 
  87.        larger than 64K total (after adding you installation commands). 
  88.        This really is NOT a problem, since a typical command file is 
  89.        less than than 5K (typically less than 1K). The size of SIS 
  90.        without commands is under 10K, thus leaving room for up to 54K in 
  91.        commands ! That's a whole lot of commands.
  92.  
  93.        SIS comes with a password of SISLITE (all uppercase). SIS knows 
  94.        the difference between upper and lower case on passwords.
  95.  
  96.        The remainder of this documentation will be devoted to explaining 
  97.        usage of the commands and variables which are available for 
  98.        commands in the command file. Any command which is NOT a command 
  99.        of SIS, must be a DOS program, not a batch file command. Thus, 
  100.        ECHO is not allowed, but FORMAT is !
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.                 Shareware Installation System Lite     PAGE 3
  108.  
  109.        QUICK START USAGE
  110.  
  111.  
  112.        Create your master disk(s) and save room on disk one for SIS, 
  113.        which is about 10K (usually less than 7K) . Now, using any Text 
  114.        Editor or Wordprocessor, create the command list, using the 
  115.        special commands of SIS and any valid DOS program (executables 
  116.        with the extension COM and EXE).
  117.  
  118.  
  119.        A typical command file will contain :
  120.  
  121.        1) Opening screen describing your product in brief and the base 
  122.        requirements of the product.
  123.  
  124.        2) A prompt to Abort or continue.
  125.  
  126.        3) Next, prompt for the destination drive.
  127.  
  128.        4) Prompt for the destination path
  129.  
  130.        You are now ready to copy files from the source drive (you don't 
  131.        have to ask for the name, as SIS automatically knows).
  132.  
  133.        5) Copy files from the source to the destination.
  134.  
  135.        6) Unpack any files using your un-packing program or using a 
  136.        command to start a self un-packing program.
  137.  
  138.        7) Start any new program, or display a closing screen giving the 
  139.        user quick start instructions.
  140.  
  141.  
  142.        The next step is to type SISLITE /I   at any DOS command line 
  143.        prompt. This will be the process of applying your commands to a 
  144.        new installation file. You will be prompted for the existing 
  145.        password (SISLITE is the original one), for verification to 
  146.        proceed on deleting the existing command set, the new command 
  147.        file (path may be included), the name of the new installation 
  148.        program (no extension is required), and finally the new password, 
  149.        so others can not modify your command list.
  150.  
  151.        Your new installation program will be created. You must copy this 
  152.        to your new master disk. Then, you should test it. This is the 
  153.        time to find mistakes. If you have the registered version, we 
  154.        provide both a Text Editor and a SIS verification system. Our SIS 
  155.        verifier will find over 90% of the possible errors. We have 
  156.        found, if your installation command set works once, and the user 
  157.        has a PC or compatible system running any DOS from 2.0 up, that 
  158.        SIS will work as installed each time !
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.                 Shareware Installation System Lite     PAGE 4
  166.  
  167.        Quick Start Commands ..
  168.  
  169.        01) CLR - clears the display
  170.  
  171.        02) CD - change directory
  172.  
  173.        03) COPY - copy files from source to destination
  174.  
  175.        04) CR - waits for ENTER key to be pressed
  176.  
  177.        05) DELETE - Delete a file
  178.  
  179.        06) GETDRV - Gets destination drive from user
  180.  
  181.        07) GOTO - Branch to a label
  182.  
  183.        08) IFCR - Test last CR entry for escape key
  184.  
  185.        09) IFDOS - Test DOS version
  186.  
  187.        10) IFEXIST - Test for existence of a file
  188.  
  189.        11) IFVID - Test for color system
  190.  
  191.        12) IFYN - Test response from YN input function
  192.  
  193.        13) IFERR - Test if an error level is there
  194.  
  195.        14) LEN - Set the LEN variable to a value from 1 to 80
  196.  
  197.        15) LIN - Gets up to 80 character line input
  198.  
  199.        16) LOCATE - Position cursor
  200.  
  201.        17) MKDIR - Create destination directory
  202.  
  203.        18) RENAME - Rename a file
  204.  
  205.        19) ROOT - Sets destination path prefix to always assume path is 
  206.        off root.
  207.  
  208.        {continued next page}
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.                 Shareware Installation System Lite     PAGE 5
  216.  
  217.        20) SETCOLR - Set color for CLR function
  218.  
  219.        21) SETDRV - Set destination drive letter
  220.  
  221.        22) SETLIN - Set Line input variable
  222.  
  223.        23) SETPTH - Set path to last LIN (line input)
  224.  
  225.        24) SETSIZ - Set the target min. size
  226.  
  227.        25) SETSPTH - Set source path
  228.  
  229.        26) WRITE - Display text using current colors
  230.  
  231.        27) YN - Waits for 'Y', 'N' or Escape (upper or lower case) as 
  232.        yes no response.
  233.  
  234.        Any other command file entry is a DOS program, such as FORMAT.
  235.  
  236.        In addition, there are a few variables that SIS knows about. To 
  237.        use these variables, prefix them with the '@' character.
  238.  
  239.        EXAMPLE : COPY @LIN
  240.  
  241.        The @LIN above will be replaced with whatever is in the current 
  242.        line input buffer, from a previous LIN function call.
  243.  
  244.  
  245.        Quick start variables ...
  246.  
  247.        The following is a list of available variables :
  248.  
  249.        1) DRV - The selected destination drive
  250.  
  251.        2) PTH - The selected destination path
  252.  
  253.        3) YN - Current response from the YN function
  254.  
  255.        4) CR - returns 'E' if escape was pressed at last CR function
  256.  
  257.        5) COLR - returns the value of the current color setting in HEX
  258.  
  259.        6) SRC - Returns the source drive
  260.  
  261.        7) LIN - returns the string input at the last LIN function
  262.  
  263.        8) SPTH - returns a string equal to the selected source path
  264.  
  265.        Remember, to use these variables on a command line, precede it 
  266.        with the '@' character.
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.                 Shareware Installation System Lite     PAGE 6
  274.  
  275.        COMMAND FILE
  276.  
  277.  
  278.        This is the file the Author or developer creates, which contains 
  279.        the SIS commands and DOS commands. A SIS command file can NOT 
  280.        have any BATCH file commands. These are commands which are built 
  281.        into DOS. A command other than SIS commands, are the names of COM 
  282.        or EXE programs residing on the source disk or the client system, 
  283.        with a DOS PATH set to it.
  284.  
  285.  
  286.        This file is merged into SISLITE when SIS is started with the /I 
  287.        command line switch.
  288.  
  289.  
  290.        Command file line lengths should be under 120 characters
  291.  
  292.        A command file size can be up to 56K bytes.
  293.  
  294.        The commad file can be created using any word processor (which 
  295.        saves files as ascii), any text editor or our LWRITE program.
  296.  
  297.  
  298.        A typical command file might contain the following :
  299.  
  300.  
  301.                CLR 1 1 25 80 17
  302.                LOCATE 5 5
  303.                WRITE INSTALLING THE SHAREWARE INSTALLATION SYSTEM LITE
  304.                LOCATE 7 5
  305.                WRITE ENTER YOUR DESTINATION DRIVE
  306.                GETDRV
  307.                LOCATE 9 5
  308.                WRITE ENTER THE DESTINATION PATH TO INSTALL TO
  309.                CLR 10 5 10 75 07
  310.                LOCATE 10 5
  311.                LIN
  312.                SETPTH
  313.                MKDIR
  314.                COPY *.*
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.                 Shareware Installation System Lite     PAGE 7
  323.  
  324.  
  325.        The above would get the destination drive and path, make the 
  326.        directory on the destination and finally copy all files on the 
  327.        source to the destination.
  328.  
  329.        The user is prompted for both the drive and path. The screen is 
  330.        cleared to white on blue (color systems) and just ahead of the 
  331.        line input command, LIN, the line input the string at, is cleared 
  332.        to white on black.
  333.  
  334.        The above file takes less than 400 bytes ! Also, in this case, we 
  335.        do not use any additional commands other than those supplied 
  336.        within SIS, thus keeping the total installation system size to a 
  337.        small under 8K bytes. The command file itself is NOT included on 
  338.        the installation disk, as the commands will reside within the SIS 
  339.        installation system itself.
  340.  
  341.        EXTERNAL COMMANDS
  342.  
  343.        An external command must have either a COM or EXE extension, no 
  344.        batch files allowed. The line containing an external command, 
  345.        must include the full path and name.
  346.  
  347.        IE .... C:\SIS\SIS.COM
  348.                SISLITE.COM
  349.  
  350.        In the above, we are starting the COM program SIS, from the SIS 
  351.        directory, on drive C.  If the drive letter is NOT included, then 
  352.        the file is assumed to be on the current drive, usually the 
  353.        source drive of the program to be installed.
  354.  
  355.        An external command may include any command line options which 
  356.        are normally passed to the program, such as :
  357.  
  358.                WS.EXE MYFILE
  359.                FORMAT.EXE A:
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.                 Shareware Installation System Lite     PAGE 8
  367.  
  368.        SIS Variables :
  369.  
  370.  
  371.        Although all of the variables can be retrieved on the command 
  372.        line (of any line in a Command File), the most useful ones are :
  373.  
  374.  
  375.        LIN, DRV & PTH
  376.  
  377.        Your command line will be expanded to include the variable(s) 
  378.        which are currently set. In this way, a command line like the 
  379.        following will be expanded :
  380.  
  381.        IFEXIST @DRV:@PTH\COMMAND.COM GOTO XIT
  382.  
  383.        If the variable @DRV is 'D' and @PTH is \SIS then the line would 
  384.        be expanded to :
  385.  
  386.        IFEXIST D:\SIS\COMMAND.COM GOTO XIT
  387.  
  388.        In this manner, some things can be done, with unknowns at run 
  389.        time. This is a very powerful feature.
  390.  
  391.        An example of using the DRV variable follows :
  392.  
  393.        @DRV:
  394.  
  395.        This will set the current drive to that selected by the user
  396.  
  397.        In this way, you will be logged onto the destination drive
  398.  
  399.        We can also change directories by using the CD command :
  400.  
  401.        CD @PTH
  402.  
  403.        This will expand to the current path after the PTH variable is 
  404.        set using the SET PTH function. Also, in conjunction, we can also 
  405.        specify the drive with this command, so :
  406.  
  407.        CD @DRV:@PTH
  408.  
  409.        Is also perfectly legal
  410.  
  411.  
  412.  
  413.        SIS ERRORLEVELS
  414.  
  415.        SIS will exit with an errorlevel if any major errors are detected 
  416.        at run time. See extended documentation below for errorlevels.
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.                 Shareware Installation System Lite     PAGE 9
  424.  
  425.  
  426.        - - - U S A G E - - -
  427.  
  428.  
  429.        CLR
  430.  
  431.        Syntax : CLR srow scol erow ecol colr
  432.  
  433.        Where  : 'srow' & 'scol' are the starting row / column to clear
  434.                 'erow' & 'ecol' are the ending row / column to clear
  435.                 'colr' is the color to clear the area to in HEX
  436.  
  437.        Alternate : CLR
  438.  
  439.        This version clears the entire display
  440.  
  441.        All of these are decimal values, except 'colr', which is HEX, and 
  442.        must be two digits (no more, no less).
  443.  
  444.        'colr' may also be selected by using the variable @COLR instead 
  445.        of a value.
  446.  
  447.        Example : CLR 5 5 20 75 17
  448.  
  449.        The above clears lines 5 thru 20 and columns 5 thru 75 to white 
  450.        on blue. 
  451.  
  452.        Example : CLR 6 6 20 76 @COLR
  453.  
  454.        Clears lines 6 thru 20 and columns 6 thru 76 to the value of the 
  455.        variable @COLR.
  456.  
  457.  
  458.        COPY
  459.  
  460.        Syntax : COPY fname
  461.  
  462.        Where  : 'fname' is any valid DOS file name and my include wild 
  463.        cards, such as '*' or '?'
  464.  
  465.        Example : COPY SISLITE.COM
  466.  
  467.        Would copy 'SISLITE.COM' from the source to the destination
  468.  
  469.  
  470.        CR
  471.  
  472.        Syntax : CR
  473.  
  474.        Waits for the user to press ENTER or ESCAPE
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.                 Shareware Installation System Lite     PAGE 10
  482.  
  483.  
  484.        - - - U S A G E - - -
  485.  
  486.  
  487.  
  488.        GETDRV
  489.  
  490.  
  491.        Syntax : GETDRV
  492.  
  493.        Waits for the user to enter the destination drive letter or the 
  494.        ESCAPE KEY.
  495.  
  496.  
  497.        GOTO
  498.  
  499.        Syntax : GOTO label
  500.  
  501.        Where  : 'label' is any string beginning with a colon ':'
  502.  
  503.        Example : GOTO XIT
  504.  
  505.        Would look for the label ':XIT'
  506.  
  507.  
  508.  
  509.        IFCR
  510.  
  511.        Syntax : IFCR command
  512.  
  513.        Where  : 'command' is any valid command file command
  514.  
  515.  
  516.        Example : IFCR GOTO XIT
  517.  
  518.        This would branch to the label if the last CR operation returned 
  519.        an ESCAPE.
  520.  
  521.  
  522.  
  523.        IFDOS
  524.  
  525.        Syntax : IFDOS ver command
  526.  
  527.        Where  : 'ver' is the version to test for, and the condition is 
  528.        met, if the actual DOS version is greater than or equal to 'ver'
  529.  
  530.                 'command' is any valid Command File command
  531.  
  532.        Example : IFDOS 2.0 THEN GOTO GOODOS
  533.  
  534.        Would branch the file to the label 'GOODOS' if the actual DOS 
  535.        version was 2.0 and up (IE.. 3.0 would branch.)
  536.  
  537.  
  538.  
  539.  
  540.  
  541.                 Shareware Installation System Lite     PAGE 11
  542.  
  543.  
  544.        - - - U S A G E - - -
  545.  
  546.  
  547.  
  548.        IFEXIST
  549.  
  550.        Syntax : IFEXIST fname command
  551.  
  552.        Where  : 'fname' is any valid DOS file name
  553.                 'command' is any valid Command File command
  554.  
  555.        Example : IFEXIST SISLITE.COM GOTO XIT
  556.  
  557.        Branches if the file 'SISLITE.COM' exists, to the label 'XIT'
  558.  
  559.  
  560.  
  561.        IFVID
  562.  
  563.        Tests if current video is color
  564.  
  565.        Syntax : IFVID command
  566.  
  567.        Where  : 'command' is any valid Command File command
  568.  
  569.        Example : IFVID GOTO COLOR
  570.  
  571.        Branches to 'COLOR' if the video system in use is color
  572.  
  573.  
  574.  
  575.        IFYN
  576.  
  577.        Syntax : IFYN resp command
  578.  
  579.        Where  : 'resp' is the expected YN response being tested for, and 
  580.        may be either 'Y', 'N' or 'E', where 'E' is for escape.
  581.  
  582.                 'command' is any valid Command File command
  583.  
  584.  
  585.        Example : IFYN Y GOTO DOYES
  586.  
  587.        Would branch to 'DOYES' if the last YN operation returned a 
  588.        response of 'Y' (for yes).
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.                 Shareware Installation System Lite     PAGE 12
  597.  
  598.  
  599.        - - - U S A G E - - -
  600.  
  601.  
  602.  
  603.        IFERR
  604.  
  605.        Syntax : IFERR var command
  606.  
  607.        Where  : 'var' is the expected errorlevel
  608.                 'command' is any valid command file command
  609.  
  610.        The command 'command', will be performed, if ERR is equal to or 
  611.        greater than the selected test 'val'.
  612.  
  613.  
  614.  
  615.        LIN
  616.  
  617.        Syntax : LIN
  618.  
  619.        Gets up to 80 characters as input from the user
  620.  
  621.        This input can be set to the PTH by using SET PTH command
  622.  
  623.  
  624.  
  625.  
  626.        LOCATE
  627.  
  628.        Syntax : LOCATE row column
  629.  
  630.        Where  : 'row' and 'column' are decimal values representing the 
  631.        new cursor location of row and column.
  632.  
  633.  
  634.        Example :  LOCATE 5 5
  635.  
  636.        Would position the cursor to line 5 column 5
  637.  
  638.  
  639.        MKDIR
  640.  
  641.        Syntax : MKDIR
  642.  
  643.        Creates the destination directory set with the SET PTH function
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.                 Shareware Installation System Lite     PAGE 13
  653.  
  654.  
  655.        - - - U S A G E - - -
  656.  
  657.  
  658.  
  659.        SETCOLR 
  660.  
  661.        Syntax : SETCOLR foreground background
  662.  
  663.        Where  : 'foreground' is the foreground color to use
  664.                 'background' is the background color to use
  665.  
  666.        Both values are in decimal, in the range of 0 thru 16
  667.  
  668.        See COLORS below for the standard set of colors available.
  669.  
  670.        This puts the combined value into the variable 'COLR' for later 
  671.        use with the @COLR variable. This is useful if you don't want to 
  672.        calculate the HEX value for the CLR function above.
  673.  
  674.  
  675.  
  676.        SETPTH
  677.  
  678.        Syntax : SETPTH
  679.  
  680.        Sets the variable PTH to the last LIN operation value.
  681.  
  682.  
  683.  
  684.        WRITE
  685.  
  686.        Syntax : WRITE text
  687.  
  688.        Where  : 'text' is any string of characters.
  689.  
  690.        This displays the selected text at the current cursor location, 
  691.        using the existing colors.
  692.  
  693.        Example : WRITE Hello
  694.  
  695.        Displays 'Hello' at the current cursor location
  696.  
  697.  
  698.  
  699.        YN
  700.  
  701.        Syntax : YN
  702.  
  703.        Waits for the user to press 'Y', 'N' or the Escape key. 'Y' & 'N' 
  704.        may be upper or lower case, typed characters.
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.                 Shareware Installation System Lite     PAGE 14
  713.  
  714.  
  715.        - - - U S A G E - - -
  716.  
  717.  
  718.  
  719.        CD
  720.  
  721.        Syntax : CD dir
  722.  
  723.        Where  : 'dir' is the name of a directory to change to
  724.  
  725.        Example : CD \SIS
  726.  
  727.        Would change the current directory to SIS off the root
  728.  
  729.  
  730.  
  731.        SETDRV
  732.  
  733.        Syntax : SETDRV d
  734.  
  735.        Where : 'd' is the desired drive for a default
  736.  
  737.        Example : SETDRV C
  738.  
  739.        Sets the default destination drive to C
  740.  
  741.  
  742.  
  743.        SETSPTH
  744.  
  745.        Syntax : SETSPTH string
  746.  
  747.        Where : 'string' is any valid path string
  748.  
  749.        This sets the current source path for the COPY command. The 
  750.        default source path is the root.
  751.  
  752.  
  753.        SETLIN
  754.  
  755.        Syntax : SETLIN text
  756.  
  757.        Where : 'text' is any string of characters
  758.  
  759.        This is useful for setting a default destination path, in 
  760.        conjunction with the above SET PTH function.
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.                 Shareware Installation System Lite     PAGE 15
  769.  
  770.        - - - U S A G E - - -
  771.  
  772.  
  773.        LEN
  774.  
  775.        Syntax : LEN n
  776.  
  777.        Where : 'n' is a decimal value, range of 1 thru 80
  778.  
  779.        This fixes the max length for the LIN function (above). The 
  780.        default LIN input length is 80 characters.
  781.  
  782.  
  783.  
  784.  
  785.        ROOT
  786.  
  787.        Syntax : ROOT
  788.  
  789.        After executing this command all subsquent SET PTH commands will 
  790.        assure the path is prefixed with the "\" character, so all paths 
  791.        will be relative to the root.
  792.  
  793.  
  794.  
  795.        DELETE
  796.  
  797.        Deletes a single file
  798.  
  799.        Syntax : DELETE filename
  800.  
  801.        Where : 'filename' is any valid DOS file name and may NOT include 
  802.        wild cards "*" or "?"
  803.  
  804.  
  805.  
  806.  
  807.        RENAME
  808.  
  809.        Renames a single file
  810.  
  811.        Syntax : RENAME oldfile newfile
  812.  
  813.        Where : 'oldfile' and 'newfile' are any valid DOS file names and 
  814.        may NOT include wild cards "*" or "?" . 'oldfile' is the files 
  815.        current name, while 'newfile' is the name to change to.
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.                 Shareware Installation System Lite     PAGE 16
  823.  
  824.        - - - U S A G E - - -
  825.  
  826.  
  827.        SETSIZ
  828.  
  829.        Syntax : SETSIZ bytes
  830.  
  831.        Where : 'bytes' is a decimal value of less than 4 gigabytes
  832.  
  833.        Default value for SETSIZ is 360000 (360K)
  834.  
  835.        This sets the expected drive size minimum, IE...360000 bytes 
  836.        means that there must be at least 360K available on the selected 
  837.        drive.
  838.  
  839.        An errorleve is set (ERR) upon end users entry from the GETDRV  
  840.        function. EXAMPLE:
  841.  
  842.                SETSIZ 363000
  843.                WRITE ENTER DESTINATION DRIVE >_
  844.                GETDRV
  845.                IFERR 1 GOTO BADDRV
  846.                IFERR 2 GOTO BADSIZ
  847.  
  848.        ERR = 1 if the drive is bad (selects a drive that is NOT 
  849.        available), ERR = 2 if the drive does NOT have the requested min. 
  850.        size set by SETSIZ, above is 363000
  851.  
  852.  
  853.        The variable SPTH (@SPTH) can be used with the CD function to 
  854.        allow changing the path on the source drive.
  855.  
  856.  
  857.        Any other string of characters starting a line will be assumed to 
  858.        be a valid file name, except labels (beginning with a colon). 
  859.        Remember, NO batch commands such as ECHO, CD, MD, etc.. are 
  860.        allowed in the commands used.
  861.  
  862.  
  863.  
  864.  
  865.  
  866.  
  867.                 Shareware Installation System Lite     PAGE 17
  868.  
  869.        SIS COLORS
  870.  
  871.  
  872.        The colors available for the SIS commands must be in the range of 
  873.        0 thru 16 (exclusively), for foreground and background. For 
  874.        entering colors as HEX (both values are combined), the colors 
  875.        range from 0 thru F (IE... 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)
  876.  
  877.        When used with the CLR command, both values are entered as a 
  878.        combined value, with the background first. (IE... 17 would be 1 
  879.        for background and 7 for foreground)
  880.  
  881.        For background colors, any value over 7, makes the foreground 
  882.        color blink. IE... 87 would be 17 plus, the foreground color 7 
  883.        would blink.
  884.  
  885.        COLOR TRANSLATION
  886.  
  887.  
  888.        Foreground and background          Foreground only
  889.  
  890.         0 = Black                           8 = Dark Gray
  891.         1 = Blue                            9 = Light Blue
  892.         2 = Green                          10 = Light Green
  893.         3 = Cyan                           11 = Light Cyan
  894.         4 = Red                            12 = Light Red
  895.         5 = Magenta                        13 = Light Magenta
  896.         6 = Brown                          14 = Yellow
  897.         7 = White (gray)                   15 = White (intense white)
  898.  
  899.  
  900.        Where : 10 = 0A Hex                 11 = 0B Hex
  901.                12 = 0C Hex                 13 = 0D Hex
  902.                14 = 0E Hex                 15 = 0F Hex
  903.  
  904.  
  905.  
  906.  
  907.  
  908.  
  909.                 Shareware Installation System Lite     PAGE 18
  910.  
  911.        SPECIAL NOTES
  912.  
  913.  
  914.        SIS provides some features automatically. One is SIS 
  915.        automatically flags the drive which started SIS (the installation 
  916.        program) on, as the source drive. This value is stored in the 
  917.        variable @SRC for your use. SIS also supplies the destination 
  918.        drive once you request that from the client (end user), as well 
  919.        as the destination path. The destination drive is supplied as 
  920.        variable @DRV while the path is @PTH . SIS supplies on other 
  921.        special variable, @VID. This is used with the special IF 
  922.        function, of 'IF VID command' to test for a color system. With 
  923.        this feature, you can set the colors for the CLR function 
  924.        depending upon the video type. A more complete explanation is 
  925.        provided below.
  926.  
  927.  
  928.        In the video test above (IF VID) the command 'command' is 
  929.        executed only if VID is color. In other words, the command 
  930.        supplied, would NOT be executed if VID is monochrome.
  931.  
  932.  
  933.        SIS automatically tests for DOS 2.0 and up, thus if SIS finds a 
  934.        system attached, running DOS 1.0, it would stop the install and 
  935.        produce an error message.
  936.  
  937.  
  938.        SIS also automatically tries to set the video to 25x80 color, if 
  939.        that fails, SIS will check if the system is monochrome, and if so 
  940.        continue, or halt if a system is detected not fitting the two 
  941.        possible modes.
  942.  
  943.  
  944.        SIS, upon entry, also clears the display. Thus you don't need a 
  945.        clear function prior to this.
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.                 Shareware Installation System Lite     PAGE 19
  954.  
  955.        EXTENDED DOCUMENTATION - REGISTERED VERSION
  956.  
  957.  
  958.  
  959.        The remainder of this documentation will present information not 
  960.        covered by the original Shareware documentation.
  961.  
  962.  
  963.        Preparation :
  964.  
  965.  
  966.        Create a Command File using LWRITE, any wordprocessor or text 
  967.        editor. The command file contains the instructions SIS follows to 
  968.        provide your software with an installation system. Since SIS 
  969.        provides no thinking of its own, the system depends upon your 
  970.        Command File being correct. For this reason I have provided you 
  971.        with the SISVER program, which reads in a Command File and 
  972.        verifies it's syntax. For details on usage and reporting errors 
  973.        for SISVER, please read the SISVER.DOC file.
  974.  
  975.  
  976.        Once you have a verified Command File, you can configure SIS by 
  977.        entering SISLITE (or your current program name) at a DOS prompt, 
  978.        followed by a space and '/I'.  IE... 'SISLITE /I'
  979.  
  980.        When you press the ENTER key, after entering the above, you will 
  981.        be prompted to verify that indeed you really want to re-configure 
  982.        the installation routines.
  983.  
  984.        Upon verifying the above, you will be prompted for the current 
  985.        password, which is 'SISLITE' . You enter the password, and press 
  986.        ENTER. If you have already configured SIS once, and are 
  987.        re-configuring, then enter whatever password you used to save the 
  988.        new previous configuration.
  989.  
  990.        You will now be prompted for a new Command File, containing the 
  991.        new set of installation commands. Any valid file name and 
  992.        extension is valid here. IE.... 'CMD.LST'
  993.  
  994.        Now SIS will prompt for a name to call the new installation 
  995.        system. You enter up to 8 characters, SIS supplies the 'COM' 
  996.        extension. Two typical file names to use are 'GO' & 'INSTALL', 
  997.        however, be creative, and use any 8 character file name.
  998.  
  999.        Finally, you are prompted for a new password. You may enter any 
  1000.        character, upper or lower case alpha characters are allowed. SIS 
  1001.        will require exactly the same sequence when an attempt is made to 
  1002.        change the current configuration / installation commands, using 
  1003.        the '/I' option.
  1004.  
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010.                 Shareware Installation System Lite     PAGE 20
  1011.  
  1012.        After pressing enter (above), you will have a new installation 
  1013.        system, ready to use (easy !). Copy the new installation program 
  1014.        thus created to your first master disk (disk to be distributed). 
  1015.        Now, your customers need only enter the name of the program, 
  1016.        after logging onto the floppy, and SIS will execute each of the 
  1017.        commands it found in your Command File.
  1018.  
  1019.        Starting on page 8 (above), the exact syntax of each available 
  1020.        command was given, so the remainder of this documentation will be 
  1021.        used to provide expanded usage explanations.
  1022.  
  1023.  
  1024.        CLR is an easy to use function, and replaces the DOS CLS command, 
  1025.        with some enhancements. One, you control the area of the display 
  1026.        to clear and two, you can clear the area to any color. The color 
  1027.        you specify with CLR must be hex, or the variable @COLR may be 
  1028.        supplied. @COLR is set when you supply a foreground and 
  1029.        background color using the SET COLR option, described below.
  1030.  
  1031.        Although, CLR is NOT a window manager, it can be used in a 
  1032.        similar fashion. You can clear several areas of the display to 
  1033.        different colors, thus creating a window effect. When the 
  1034.        function WRITE is used, to display text, the current screen 
  1035.        colors are used, thus taking full advantage of any colors set 
  1036.        using the CLR function.
  1037.  
  1038.        A typical usage, would be to first clear the entire screen to 
  1039.        white on blue (color systems), then create a window to display, 
  1040.        perhaps a menu.
  1041.  
  1042.                CLR 1 1 25 80 17            {Clears all to white on blue}
  1043.                CLR 5 5 15 60 4F            {Make a white on red menu}
  1044.  
  1045.  
  1046.        You could also clear four window areas, such as :
  1047.  
  1048.                CLR 1 1 12 40 17            {Top left to white on blue}
  1049.                CLR 1 41 12 80 4F           {Top right to white on red}
  1050.                CLR 13 1 25 40 30           {Bot left to black on cyan}
  1051.                CLR 13 41 25 80 20          {Bot right to black on green}
  1052.  
  1053.        For monochrome systems the following might be used :
  1054.  
  1055.                CLR 1 1 12 40 70            {Top left to black on white}
  1056.                CLR 1 41 12 80 07           {Top right to white on black}
  1057.                CLR 13 1 25 40 0F           {Bot left to intense white on
  1058.                                             black}
  1059.                CLR 13 41 25 80 70          {Bot right to black on white}
  1060.  
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066.                 Shareware Installation System Lite     PAGE 21
  1067.  
  1068.        Of course, once you put information into an area of the screen, 
  1069.        you can use CLR to re-clear that portion for re-use.
  1070.  
  1071.  
  1072.        Using the SETCOLR function prior to CLR saves you from the HEX 
  1073.        requirement, as using the SETCOLR creates the HEX value for you, 
  1074.        when you supply the foreground and background values.
  1075.  
  1076.        For instance :
  1077.  
  1078.                SETCOLR 7 1
  1079.                CLR 1 1 25 80 @COLR
  1080.  
  1081.        Will clear the entire screen to white on blue.
  1082.  
  1083.  
  1084.  
  1085.        The SIS COPY function is an enhanced version of the DOS COPY 
  1086.        command. The SIS version does NOT require a destination, as the 
  1087.        destination is assumed to be the destination supplied by your 
  1088.        customer, the end user. The source is always constant, and will 
  1089.        be the drive which SIS started on.
  1090.  
  1091.        Use COPY to place your original files onto the destination 
  1092.        system, then use your file extraction program to extract the 
  1093.        files. Alternately you can extract the files from the source to 
  1094.        the destination, which will be explained later.
  1095.  
  1096.        Using COPY :
  1097.  
  1098.  
  1099.                COPY 'source file name'
  1100.  
  1101.        The 'source file name' is any file name, including wild cards, 
  1102.        which exist on the source drive. Do NOT specify a directory or 
  1103.        drive letter, just the 8 character name and 3 character 
  1104.        extension, such as '*.*', '*.DOC' or 'READ.ME' .
  1105.  
  1106.  
  1107.        GOTO is valuable in that a branch may occur during the sequence 
  1108.        of instructions to perform during an installation. The GOTO may 
  1109.        simply be the start of a command, such as 'GOTO XIT' or may be 
  1110.        used as the command to perform when using one of the IF functions 
  1111.        supplied with SIS.
  1112.  
  1113.        The GOTO function is followed by a label name, which is a place 
  1114.        holder in the command list, similar to that in a batch file. And 
  1115.        like a batch file label, the label must be preceded by a COLON.
  1116.  
  1117.                GOTO XIT
  1118.                command(s)
  1119.                :XIT
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.                 Shareware Installation System Lite     PAGE 22
  1127.  
  1128.  
  1129.        Using the previous CLR function, in an example, along with the IF 
  1130.        VID function we come up with :
  1131.  
  1132.                SETCOLR 7 1                 {Start with white on blue}
  1133.                IFVID GOTO GOTCOLOR         {If the sys is color bypass
  1134.                SETCOLR 7 0                 { this line, setting to white
  1135.                :GOTCOLOR                   { on black -- this is the
  1136.                                            { label
  1137.  
  1138.        We could be more effective by using the following :
  1139.  
  1140.                SETCOLR 7 0
  1141.                IFVID SETCOLR 7 1
  1142.  
  1143.        Of course, the GOTO is better when we have several commands to 
  1144.        execute depending upon some condition, such as if the system is 
  1145.        color on monochrome.
  1146.  
  1147.  
  1148.        When you issue the function 'GETDRV' to have the user input the 
  1149.        drive to install to, be sure to provide a prompt, such as :
  1150.  
  1151.                LOCATE 5 5
  1152.                WRITE Please enter the drive letter to install to : _
  1153.  
  1154.        Upon completion of the last line (above), the cursor will be 
  1155.        positioned as shown, at the end of the display string, which will 
  1156.        be used as the drive prompt. Then to change to the selected 
  1157.        drive, simply :
  1158.  
  1159.                @DRV:
  1160.  
  1161.        You must provide the colon ":", the drive letter will be supplied 
  1162.        via the @DRV variable.
  1163.  
  1164.        You can get back to the source drive by entering :
  1165.  
  1166.                @SRC:
  1167.  
  1168.        In this way, you can change between the source and destination 
  1169.        with ease.
  1170.  
  1171.        You can use the CR function to have the user decide to abort or 
  1172.        continue, for example :
  1173.  
  1174.                LOCATE 5 5
  1175.                WRITE Press ENTER to continue, or ESCAPE to abort
  1176.                CR
  1177.                IFCR GOTO XIT
  1178.                other commands
  1179.                :XIT
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.                 Shareware Installation System Lite     PAGE 23
  1187.  
  1188.        The previous example would branch to XIT (label) if the user 
  1189.        pressed the escape key during the CR function. In this manner, 
  1190.        you can abort the installation process at any time.
  1191.  
  1192.  
  1193.        Does your program like to run under DOS 3.0 and up only ? Then 
  1194.        use the function 'IFDOS' to make that test, IE....
  1195.  
  1196.                IFDOS 3.0 GOTO GOOD.DOS
  1197.                LOCATE 5 5
  1198.                WRITE Must have DOS 3.0 and up ...
  1199.                GOTO XIT
  1200.                :GOOD.DOS
  1201.                commands
  1202.                :XIT
  1203.  
  1204.  
  1205.        Your system runs only on DOS 3.0, then use this :
  1206.  
  1207.                IFDOS 3.1 GOTO BAD.DOS
  1208.                IFDOS 3.0 GOTO GOOD.DOS
  1209.                :BAD.DOS
  1210.                LOCATE 5 5
  1211.                WRITE Must have DOS 3.0 !
  1212.                GOTO XIT
  1213.                :GOOD.DOS
  1214.                commands
  1215.                :XIT
  1216.  
  1217.  
  1218.        SIS provides the conditional test 'IFEXIST' primarily to give you 
  1219.        a method to verify the existence of your source files. In this 
  1220.        manner, you can be sure that the correct disk number is currently 
  1221.        installed as a source disk, or that the user has NOT started the 
  1222.        installation from other than the source.
  1223.  
  1224.        A good example of using the feature is :
  1225.  
  1226.                :DSK.ONE
  1227.                IFEXIST DISK.ONE GOTO VALID.ONE
  1228.                LOCATE 5 5
  1229.                WRITE Disk one of installation is not source, please
  1230.                WRITE  install disk one, and press ENTER or
  1231.                WRITE  press ESCAPE to abort.
  1232.                CR
  1233.                IFCR GOTO ABRT
  1234.                GOTO DSK.ONE
  1235.                :ABRT
  1236.                LOCATE 7 5
  1237.                WRITE Please start installation from the source drive.
  1238.                :XIT
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.                 Shareware Installation System Lite     PAGE 24
  1246.  
  1247.        Notice in the above example, the multiple WRITE functions 
  1248.        following the first LOCATE function. If you want to make long 
  1249.        lines, using the full 80 columns, please, do use more than one 
  1250.        WRITE to do it. Remember, WRITE does NOT provide a CR/LF to set 
  1251.        a new line, and any text not fitting on the current line will be 
  1252.        truncated (chopped off).
  1253.  
  1254.        The file we test for, in the above (previous page), may even be 
  1255.        an empty file (zero bytes). This type of file is often used as a 
  1256.        flag to mark a disk, as one, two, etc....
  1257.  
  1258.        Another case to use the IFEXIST function is to verify that a 
  1259.        directory does not exist. That is, make sure the user is having 
  1260.        us create a new directory. 
  1261.  
  1262.                IFEXIST @PTH\*.* GOTO BAD.PATH
  1263.                commands
  1264.                GOTO XIT
  1265.                :BAD.PATH
  1266.                LOCATE 5 5
  1267.                WRITE Invalid path specified, directory exists.
  1268.                LOCATE 6 5
  1269.                WRITE press ENTER to try another directory name
  1270.                WRITE  or ESCAPE to abort installation.
  1271.                CR
  1272.                IFCR GOTO XIT
  1273.                GOTO GET.DIR
  1274.  
  1275.  
  1276.        The above example simply tests if any file exists in the 
  1277.        destination directory. If any file exists, then have the user 
  1278.        re-specify or do additional testing or abort at that point.
  1279.  
  1280.        Need to ask the end user a question, such as is there a mouse ?
  1281.  
  1282.        SIS provides for your needs as follows :
  1283.  
  1284.                LOCATE 5 5
  1285.                WRITE Does your system have a mouse (ESCAPE = abort)
  1286.                YN
  1287.                IFYN N GOTO NOMOUSE
  1288.                IFYN E GOTO ABORT
  1289.                COPY MOUSE.*
  1290.                :NOMOUSE
  1291.                commands
  1292.                :ABORT
  1293.  
  1294.  
  1295.        In this example, if the user presses the escape key, he wants to 
  1296.        abort. A no "N" means no mouse, and yes means copy mouse stuff 
  1297.        for mouse support.
  1298.  
  1299.  
  1300.  
  1301.  
  1302.  
  1303.  
  1304.                 Shareware Installation System Lite     PAGE 25
  1305.  
  1306.        SIS provides an errorlevel detection system to replace the DOS IF 
  1307.        ERRORLEVEL . To use the SIS version, simply replace ERRORLEVEL 
  1308.        with ERR and write your test as thought it were ERRORLEVEL.
  1309.  
  1310.        For instance, if you start some program which can exit with an 
  1311.        errorlevel (for failure), then the following would work.
  1312.  
  1313.                HELP.EXE
  1314.                IFERR 1 GOTO BAD.HELP
  1315.                commands
  1316.                GOTO XIT
  1317.                :BAD.HELP
  1318.                LOCATE 5 5
  1319.                WRITE Help failed, aborting installation
  1320.                :XIT
  1321.  
  1322.        In this example, if the program HELP.EXE fails, then we abort 
  1323.        with an exit message.
  1324.  
  1325.        SIS provides several ERRORLEVELS for your testing, see 
  1326.        ERRORLEVELS below for details.
  1327.  
  1328.  
  1329.        The SIS Line input function "LIN" is provide to get user 
  1330.        response, a line at a time, of up to 80 characters. This function 
  1331.        is commonly used to get the user to specify the destination path 
  1332.        as in the following :
  1333.  
  1334.                LOCATE 5 5
  1335.                WRITE Enter the destination path :
  1336.                LIN
  1337.                SETPTH
  1338.  
  1339.        This example gets input from the user, then sets the path to the 
  1340.        input, via the 'SETPTH' function.
  1341.  
  1342.  
  1343.        MKDIR
  1344.  
  1345.        This function is provided so that you can create the named 
  1346.        directory that the user provides, as in the previous example. To 
  1347.        use this function, you may do the following :
  1348.  
  1349.                LOCATE 5 5
  1350.                WRITE Enter the destination path :
  1351.                LIN
  1352.                SETPTH
  1353.                MKDIR
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.                 Shareware Installation System Lite     PAGE 26
  1362.  
  1363.        Alternately, prior to creating the directory use :
  1364.  
  1365.                WRITE Enter the destination path :
  1366.                LIN
  1367.                SETPTH
  1368.                IFEXIST @PTH\*.* GOTO COPY.IT
  1369.                MKDIR
  1370.                :COPY.IT
  1371.  
  1372.        This way, you only create the directory if it doesn't exist.
  1373.  
  1374.  
  1375.        The SIS WRITE function makes no attempt to validate your cursor 
  1376.        position, no the current screen colors. If you have set the 
  1377.        colors to black on black for instance, then using WRITE will 
  1378.        produce invisible characters.
  1379.  
  1380.  
  1381.        SIS provides the equivalent DOS command CD (change directory) to 
  1382.        allow you to log into the destination directory to perform a 
  1383.        function after installation, such as extracting files. Also, this 
  1384.        function can be used to change directories on the source disk.
  1385.  
  1386.        The first example will use CD to aid in extracting files from the 
  1387.        source disk.
  1388.  
  1389.                LOCATE 5 5
  1390.                WRITE Extracting Documentation
  1391.                @DRV:
  1392.                CD @PTH
  1393.                @SRC:DOCS.EXE
  1394.  
  1395.        In the above, the file DOCS.EXE is a self extracting file, and 
  1396.        will extract to the current drive (destination) and path.
  1397.  
  1398.  
  1399.        While the above examples are good, examples, they are not 
  1400.        complete Command Files. For Command File examples see the files 
  1401.        CMD01.LST thru CMDnn.LST .
  1402.  
  1403.  
  1404.  
  1405.  
  1406.  
  1407.  
  1408.                 Shareware Installation System Lite     PAGE 27
  1409.  
  1410.        ERRORLEVELS
  1411.  
  1412.  
  1413.  
  1414.        Errorlevels are reported via the variable @ERR and by using the 
  1415.        IF ERR function, built into SIS.
  1416.  
  1417.        Using IFERR is very close to using the DOS IF ERRORLEVEL command 
  1418.        in a batch file.
  1419.  
  1420.        When using IFERR, you supply an expected value, say 27, then a 
  1421.        command to perform if the test passes. Errorlevel testing causes 
  1422.        a PASS when the tested errorlevel (ERR) is equal or greater than 
  1423.        the expected (test) value.
  1424.  
  1425.        IE.... IFERR 27 GOTO ABORT
  1426.  
  1427.        The above passes (branch to the label 'ABORT') would occur if the 
  1428.        variable ERR was 27 or greater. A better way to test for just an 
  1429.        errorlevel of 27, would be :
  1430.  
  1431.                IFERR 28 GOTO BYPASS
  1432.                IFERR 27 GOTO ABORT
  1433.                :BYPASS
  1434.                commands
  1435.                :ABORT
  1436.  
  1437.        Thus, you can see, that errorlevels greater than that desired, 
  1438.        must first be checked, then the value for which you want to 
  1439.        perform a separate command.
  1440.  
  1441.  
  1442.        SIS will supply a variety of ERRORLEVELS which can be tested for 
  1443.        using the IF ERR function (as above), these are :
  1444.  
  1445.        0FF - SIS has bombed for some reason, such as a bad installed 
  1446.        command file.
  1447.  
  1448.        This error is given in extreme cases where no other recourse 
  1449.        exists, and results in an exit to DOS... This error is also a 
  1450.        possible indicator that your installation file has been tampered 
  1451.        with...
  1452.  
  1453.  
  1454.        0FE - Empty Command File / Not configured properly
  1455.  
  1456.        This error only occurs when the developer really goofed. Result 
  1457.        is that SIS exits, reporting this error code, no installation 
  1458.        takes place.
  1459.  
  1460.  
  1461.  
  1462.  
  1463.  
  1464.  
  1465.                 Shareware Installation System Lite     PAGE 28
  1466.  
  1467.        0FD - Wrong DOS Version
  1468.  
  1469.        This is only reported at start time, either during a 
  1470.        configuration attempt or installation attempt. This means the 
  1471.        user is using DOS 1.x . SIS LITE does NOT support this old DOS 
  1472.        version...
  1473.  
  1474.  
  1475.        0FC - Invalid password
  1476.  
  1477.        This error results in an exit, and possibly indicates an attempt 
  1478.        at tamper, or the developer forgot the password..
  1479.  
  1480.  
  1481.        0FB - User Aborted
  1482.  
  1483.        This error occurs during the configuration process and is caused 
  1484.        by the developers abort request. Aborting exit is completely 
  1485.        under the developers control during an install session. An 
  1486.        installation abort would result in an errorleve of 27 (ERR = 27) 
  1487.        or errorlevel 3 (ERR = 3) during an install session. When this 
  1488.        happens, it is the developers responsiblity to make the decision 
  1489.        on how to exit.
  1490.  
  1491.  
  1492.        0FA - Error in reading command file
  1493.  
  1494.        This error results in an exit, indicating this failure, and 
  1495.        occurs only during a configuration session. This failure 
  1496.        indicates the command file is bad, or that the file has been 
  1497.        locked !
  1498.  
  1499.  
  1500.        0F9 - Command file too large
  1501.  
  1502.        This error only occurs during a configuration session, and 
  1503.        indicates that the command file is just too large for SIS LITE to 
  1504.        handle. File size limit for SIS LITE is 56K (or about), depending 
  1505.        upon developers base ram size.
  1506.  
  1507.  
  1508.        0F8 - SIS is lost
  1509.  
  1510.        This error results in SIS exiting, and is caused by a defecting 
  1511.        install command, a damaged install file or tampering.
  1512.  
  1513.  
  1514.        0F7 - Invalid Command Line
  1515.  
  1516.        This error results in SIS exiting, and is caused by the end user 
  1517.        trying command line options (tampering).
  1518.  
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.                 Shareware Installation System Lite     PAGE 29
  1526.  
  1527.  
  1528.        Other errors occuring at installation time depend upon 
  1529.        circumstances, such as an installation abort request, where ERR 
  1530.        is set to 27. Usually, after executing an internal function, such 
  1531.        as SET??? or WRITE, LOCATE, etc.., the errorlevel is set to one 
  1532.        for a normal failure, and input routines set the errorlevel to 27 
  1533.        if the ESCAPE key or ^C key is pressed
  1534.  
  1535.        During execution of an external program, the errorlevel reported 
  1536.        will be what that program sets. IE... IF the DOS FORMAT program 
  1537.        sets the errorlevel at 4, then ERR will be 4 at that time.
  1538.  
  1539.  
  1540.        HEX to decimal translation for ERROR codes :
  1541.  
  1542.        HEX     DEC     HEX     DEC     HEX     DEC     HEX     DEC
  1543.        ------------------------------------------------------------
  1544.        0000    0000    0001    0001    0002    0002    0003    0003    
  1545.        0004    0004    0005    0005    0006    0006    0007    0007    
  1546.        0008    0008    0009    0009    000A    0010    000B    0011    
  1547.        000C    0012    000D    0013    000E    0014    000F    0015    
  1548.        0010    0016    0011    0017    0012    0018    0013    0019    
  1549.        0014    0020    0015    0021    0016    0022    0017    0023    
  1550.        0018    0024    0019    0025    001A    0026    001B    0027    
  1551.        001C    0028    001D    0029    001E    0030    001F    0031    
  1552.        0020    0032    0021    0033    0022    0034    0023    0035    
  1553.        0024    0036    0025    0037    0026    0038    0027    0039    
  1554.        0028    0040    0029    0041    002A    0042    002B    0043    
  1555.        002C    0044    002D    0045    002E    0046    002F    0047    
  1556.        0030    0048    0031    0049    0032    0050    0033    0051    
  1557.        0034    0052    0035    0053    0036    0054    0037    0055    
  1558.        0038    0056    0039    0057    003A    0058    003B    0059    
  1559.        003C    0060    003D    0061    003E    0062    003F    0063    
  1560.        0040    0064    0041    0065    0042    0066    0043    0067    
  1561.        0044    0068    0045    0069    0046    0070    0047    0071    
  1562.        0048    0072    0049    0073    004A    0074    004B    0075    
  1563.        004C    0076    004D    0077    004E    0078    004F    0079    
  1564.        0050    0080    0051    0081    0052    0082    0053    0083    
  1565.        0054    0084    0055    0085    0056    0086    0057    0087    
  1566.        0058    0088    0059    0089    005A    0090    005B    0091    
  1567.        005C    0092    005D    0093    005E    0094    005F    0095    
  1568.        0060    0096    0061    0097    0062    0098    0063    0099    
  1569.        0064    0100    0065    0101    0066    0102    0067    0103    
  1570.        0068    0104    0069    0105    006A    0106    006B    0107    
  1571.        006C    0108    006D    0109    006E    0110    006F    0111    
  1572.        0070    0112    0071    0113    0072    0114    0073    0115    
  1573.        0074    0116    0075    0117    0076    0118    0077    0119    
  1574.        0078    0120    0079    0121    007A    0122    007B    0123    
  1575.        007C    0124    007D    0125    007E    0126    007F    0127    
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.                 Shareware Installation System Lite     PAGE 30
  1583.  
  1584.        HEX     DEC     HEX     DEC     HEX     DEC     HEX     DEC
  1585.       ------------------------------------------------------------
  1586.        0080    0128    0081    0129    0082    0130    0083    0131    
  1587.        0084    0132    0085    0133    0086    0134    0087    0135    
  1588.        0088    0136    0089    0137    008A    0138    008B    0139    
  1589.        008C    0140    008D    0141    008E    0142    008F    0143    
  1590.        0090    0144    0091    0145    0092    0146    0093    0147    
  1591.        0094    0148    0095    0149    0096    0150    0097    0151    
  1592.        0098    0152    0099    0153    009A    0154    009B    0155    
  1593.        009C    0156    009D    0157    009E    0158    009F    0159    
  1594.        00A0    0160    00A1    0161    00A2    0162    00A3    0163    
  1595.        00A4    0164    00A5    0165    00A6    0166    00A7    0167    
  1596.        00A8    0168    00A9    0169    00AA    0170    00AB    0171    
  1597.        00AC    0172    00AD    0173    00AE    0174    00AF    0175    
  1598.        00B0    0176    00B1    0177    00B2    0178    00B3    0179    
  1599.        00B4    0180    00B5    0181    00B6    0182    00B7    0183    
  1600.        00B8    0184    00B9    0185    00BA    0186    00BB    0187    
  1601.        00BC    0188    00BD    0189    00BE    0190    00BF    0191    
  1602.        00C0    0192    00C1    0193    00C2    0194    00C3    0195    
  1603.        00C4    0196    00C5    0197    00C6    0198    00C7    0199    
  1604.        00C8    0200    00C9    0201    00CA    0202    00CB    0203    
  1605.        00CC    0204    00CD    0205    00CE    0206    00CF    0207    
  1606.        00D0    0208    00D1    0209    00D2    0210    00D3    0211    
  1607.        00D4    0212    00D5    0213    00D6    0214    00D7    0215    
  1608.        00D8    0216    00D9    0217    00DA    0218    00DB    0219    
  1609.        00DC    0220    00DD    0221    00DE    0222    00DF    0223    
  1610.        00E0    0224    00E1    0225    00E2    0226    00E3    0227    
  1611.        00E4    0228    00E5    0229    00E6    0230    00E7    0231    
  1612.        00E8    0232    00E9    0233    00EA    0234    00EB    0235    
  1613.        00EC    0236    00ED    0237    00EE    0238    00EF    0239    
  1614.        00F0    0240    00F1    0241    00F2    0242    00F3    0243    
  1615.        00F4    0244    00F5    0245    00F6    0246    00F7    0247    
  1616.        00F8    0248    00F9    0249    00FA    0250    00FB    0251    
  1617.        00FC    0252    00FD    0253    00FE    0254    00FF    0255    
  1618.  
  1619.        Where HEX = Hexidecimal and DEC = Decimal
  1620.  
  1621.  
  1622.  
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628.                 Shareware Installation System Lite     PAGE 31
  1629.  
  1630.        CREATING A COMMAND FILE - DETAILS
  1631.  
  1632.  
  1633.  
  1634.        To give you an idea of the POWER of SIS LITE, we will now design 
  1635.        a complex installation. Our goal, to create a multi-level target 
  1636.        path, from a multi-disk installation set.
  1637.  
  1638.        For our discussion, we'll call this program (we want to install), 
  1639.        BIG ACE ! BIG ACE is some high level application which will 
  1640.        require a hard disk of at least 2 Megabytes, and uses  a layered 
  1641.        directory structure of BASE\SYSTEM , BASE\TOOLS & BASE\CONFIG
  1642.  
  1643.        The master disk set contains 5 self extracting files, one for 
  1644.        each of 5 disks. Disk one has 10K available for the install 
  1645.        program! The 5 self extracting files are identified as :
  1646.  
  1647.                BIGACE1.EXE  ---  on disk one
  1648.                BIGACE2.EXE  ---  on disk two
  1649.                BIGACE3.EXE  ---  on disk three
  1650.                BIGACE4.EXE  ---  on disk four
  1651.                BIGACE5.EXE  ---  on disk five
  1652.  
  1653.        BIGACE1 and BIGACE2 will be loaded into the base directory BASE, 
  1654.        BIGACE3 will be loaded into BASE\SYSTEM, BIGACE4 into BASE\TOOLS 
  1655.        and finaly BIGACE5 int BASE\CONFIG .
  1656.  
  1657.        In this case, BASE will be replaced by a user selected directory.
  1658.  
  1659.        To begin, start your text editor and select a new file name 
  1660.        called BIG.SIS . This will be our new command file.
  1661.  
  1662.        Our first job is to simply display a title screen. Doing, will 
  1663.        involve a few simple steps. Step one, clear the entire screen to 
  1664.        default colors.
  1665.  
  1666.        SETCOLR 7 0
  1667.        IFVID SETCOLR 7 1
  1668.  
  1669.        First set a default color to white on black, to accomidate 
  1670.        monochrome systems (first line). Next, using the IFVID function, 
  1671.        check if the system is a color system (2nd line), and if so, set 
  1672.        the color to white on blue.
  1673.  
  1674.        Once the colors have been defined as above, we are ready to use 
  1675.        the CLR function to clear the video area. We know, that the 
  1676.        system will be set to either 80 column color or 80 column 
  1677.        monochrome, as SIS performs this initialization task upon entry. 
  1678.        In fact, that is why the screen blanks momentarily during starup.
  1679.  
  1680.        {Continued next page}
  1681.  
  1682.  
  1683.  
  1684.  
  1685.  
  1686.                 Shareware Installation System Lite     PAGE 32
  1687.  
  1688.        Since we know SIS guarantees us an 80 x 25 screen matrix, we can 
  1689.        use the following to clear all of the screen to our default 
  1690.        colors. 
  1691.  
  1692.        CLR 1 1 25 80 @COLR
  1693.  
  1694.        Notice our use of the COLR variable (prefixed with the @, which 
  1695.        indicates it's a variable). This variable was set, when we used 
  1696.        the previous SETCOLR function. In this case, we clear lines 1 
  1697.        thru 25 (standard video row count) columns 1 thur 80 (standard 
  1698.        column count) on either a monochrome or color system. The 
  1699.        difference between clearing occurs from use of the variabe COLR, 
  1700.        which was previously set depending upon video type.
  1701.  
  1702.        Now we have the base to draw our opening screen to, so lets make 
  1703.        it a little snazzy.
  1704.  
  1705.        SETCOLR 7 0
  1706.        IFVID SETCOLR 14 0
  1707.        CLR 4 5 8 76 @COLR
  1708.  
  1709.        Here, we clear a large window, over our base color. First, we set 
  1710.        the monochrome default value to white on black, and change it to 
  1711.        yellow on black (2nd line), if the system is color. Finally, we 
  1712.        clear the window to the selected color. We choose a window of row 
  1713.        4 thru 8 and columns 5 thru 76. Our reasons for this size will 
  1714.        become apparent soon.
  1715.  
  1716.        We have used the IFVID function now twice, so why not take a 
  1717.        moment and explain quickly what is happening. During the 
  1718.        initialization phase, when SIS LITE first starts, an attempt is 
  1719.        made to put the video system into color mode. On monochrome 
  1720.        systems, this attempt fails, and SIS LITE will know, and, set a 
  1721.        flag. This flag, is tested by the IFVID function, and causes a 
  1722.        postive reation, thus allowing the command following the test, to 
  1723.        be executed (command on the same line as IFVID, in this case, is 
  1724.        SETCOLR).
  1725.  
  1726.        What this does, is establish a shadow effect for our primary 
  1727.        window, which follows.
  1728.  
  1729.        SETCOLR 0 7
  1730.        IFVID SETCOLR 14 3
  1731.        CLR 3 4 7 75 @COLR
  1732.  
  1733.        This is how we create the fancy shadowed effect, Very Snazzy! 
  1734.        This set of functions sets monochrome color to black on white, 
  1735.        and color to yellow on cyan. All that's left, is to draw a 
  1736.        message into the new box, this is done below.
  1737.  
  1738.        LOCATE 4 20
  1739.        WRITE BIG ACE Action / Adventure System   (c)  1992
  1740.  
  1741.  
  1742.  
  1743.  
  1744.  
  1745.  
  1746.                 Shareware Installation System Lite     PAGE 33
  1747.  
  1748.        We've now gotton or ad onto the screen, which announces what the 
  1749.        product is. The window could have been made larger to accomidate 
  1750.        more lines of messages, such as a brief description of the 
  1751.        product. Just to give an idea, lets throw in a quick description.
  1752.  
  1753.        LOCATE 6 8
  1754.        WRITE A shareware package from Paul Scanlon & Scanlon Enterprises
  1755.  
  1756.        We now have our little window filled up, so why not make another?
  1757.  
  1758.        SETCOLR 0 7
  1759.        IFVID SETCOLR 15 0
  1760.        CLR 12 7 17 77 @COLR
  1761.        SETCOLR 0 7
  1762.        IFVID SETCOLR 15 4
  1763.        CLR 11 6 16 76 @COLR
  1764.  
  1765.        The above will clear a window as befor on monochrome systems, 
  1766.        while on color, the new colors are high intense white on red 
  1767.        (forground color) and intense white on black (shadow).
  1768.  
  1769.        We are ready to prompt the user for their first input, and thus, 
  1770.        have become interactive. The following message is placed into our 
  1771.        newly created window.
  1772.  
  1773.        LOCATE 12 18
  1774.        WRITE Are you ready to install NOW? (Y)es, (N)o < >
  1775.  
  1776.        Now the prompt is drawn, we need to get the user attention, thus, 
  1777.        we position the cursor into between the chars "<" and ">", which 
  1778.        draws the user eye contact.
  1779.  
  1780.        LOCATE 12 61
  1781.  
  1782.        This is the only purpose of the above LOCATE function. 
  1783.  
  1784.        We've initialized our prompt, so now, we request SIS LITE to wait 
  1785.        for a response, in this case, yes or no. The YN function serves 
  1786.        this purpose.
  1787.  
  1788.        YN
  1789.  
  1790.        SIS LITE now wait untill the user presses one of three keys, "Y" 
  1791.        for yes, "N" for no (these may be upper or lower case), or the 
  1792.        escape key. Once the user has pressed any one of these keys, the 
  1793.        next command is executed. In this case, we test the input from 
  1794.        the YN function for either escape or "N" . The escape is coded as 
  1795.        an "E" in the YN variable. Since we want to abort if either "N" 
  1796.        or escape is pressed, we check for each of the negative responses 
  1797.        and branch if either one is set.
  1798.  
  1799.        {continued on next page}
  1800.  
  1801.  
  1802.  
  1803.  
  1804.  
  1805.  
  1806.                 Shareware Installation System Lite     PAGE 34
  1807.  
  1808.        IFYN E GOTO ABORT
  1809.        IFYN N GOTO ABORT
  1810.  
  1811.        First we check for escape "E" and perfor a branch to our abort 
  1812.        section via a GOTO (branch instruction). Next we test for the "N" 
  1813.        key which is "no", and again branch via a GOTO to the abort 
  1814.        section. Any other key, will begin execution of the actual 
  1815.        installation process.
  1816.  
  1817.        We have a yes response, so we will reclear the bottom window. The 
  1818.        lable is only here to clarify that we are starting the 
  1819.        installation portion of the install routine. In this way, later, 
  1820.        we can find this spot in the code and make modifications. We 
  1821.        suggest, however, that these unused labels be removed prior to 
  1822.        distribution, as they do increase the install program size a tiny 
  1823.        bit, which in some cases may cause DOS to allocate an extra 
  1824.        chunck of disk space.
  1825.  
  1826.        :INSTALL
  1827.        CLR 11 6 16 76 @COLR
  1828.  
  1829.        We've recleared our bottom window, so lets get on with finding a 
  1830.        target drive. We need to prompt the user for a drive selection, 
  1831.        so let's do it.
  1832.  
  1833.        LOCATE 12 18
  1834.        WRITE ENTER DESTINATION DRIVE (EXAMPLE: C) >:
  1835.  
  1836.        Again, we have a prompt, and need to command SIS LITE to get 
  1837.        keyboard activity, in this case, a drive letter. SIS LITE gets 
  1838.        the target drive via the GETDRV function.
  1839.  
  1840.        GETDRV
  1841.  
  1842.        We could have set a default drive, asked the user it that drive 
  1843.        was ok, and then prompted for a new drive, but this is easier, 
  1844.        and only requies a single key press by the user.
  1845.  
  1846.        In addition to the target drive, we need to ask for a base 
  1847.        directory. Again, we display a prompt
  1848.  
  1849.        LOCATE 13 8
  1850.        WRITE ENTER THE DESTINATION PATH FOR INSTALLATION (EXAMPLE: \SMS)
  1851.  
  1852.        We are going to do our input a little differently this time. 
  1853.        Since our input could be up to 65 characters (a DOS path limit), 
  1854.        we will clear a little tiny window (most of one line), after 
  1855.        which we will position our cursor to the start of the new window.
  1856.  
  1857.        CLR 15 7 15 75 70
  1858.        LOCATE 15 7
  1859.  
  1860.        {continued next page}
  1861.  
  1862.  
  1863.  
  1864.  
  1865.  
  1866.                 Shareware Installation System Lite     PAGE 35
  1867.  
  1868.        We now have a window, which is black on white (on monochrome and 
  1869.        color displays). We now have SIS LITE get the input, we do this 
  1870.        with the command function LIN.
  1871.  
  1872.        LIN
  1873.  
  1874.        The path is now in the line input buffer, so we command SIS LITE 
  1875.        to transfer the buffer contents to the special variable PTH via 
  1876.        the SETPTH command.
  1877.  
  1878.        SETPTH
  1879.  
  1880.        It is now time we make special mention of a couple of important 
  1881.        steps SIS LITE has taken at this time and at the time we got a 
  1882.        target drive.
  1883.  
  1884.        SIS LITE will provide an errorlevel (reported in the ERR 
  1885.        variable), of 1 or 2, if the drive selected by the user, does not 
  1886.        meet the minimum required by you, the developer / author. The 
  1887.        following commands will provide you with a guideline in using the 
  1888.        ERR testing method, during the input of target drive and path.
  1889.  
  1890.          :INSTALL
  1891.          CLR 11 6 16 76 @COLR
  1892.          LOCATE 12 18
  1893.          WRITE ENTER DESTINATION DRIVE (EXAMPLE: C) >:
  1894.          GETDRV
  1895.         *IFERR 1 GOTO BADRV
  1896.          LOCATE 13 8
  1897.          WRITE ENTER THE DESTINATION PATH FOR INSTALLATION (EXAMPLE:_ 
  1898.                \BIGACE)
  1899.          CLR 15 7 15 75 70
  1900.          LOCATE 15 7
  1901.          LIN
  1902.          SETPTH
  1903.         *IFERR 1 GOTO BADPTH
  1904.  
  1905.        Notice the two lines prefixed with the "*" character. These two 
  1906.        lines test for error conditions, via the ERR variable. In our 
  1907.        first test, we wanted to know if the drive was too small or if it 
  1908.        doesn't exist. Either way, the error level (ERR) will be larger 
  1909.        than 0, so a branch will be performed, to a label (somewhere 
  1910.        below the branch instruction) called "BADRV". Hopefully this 
  1911.        label exists and that we have instructions telling SIS LITE how 
  1912.        to react to this problem.
  1913.  
  1914.        Our second use of IFERR is used to let us know that the path 
  1915.        selected by the user exists already, which could indicate that a 
  1916.        prior version was already there.
  1917.  
  1918.        {continued}
  1919.  
  1920.  
  1921.  
  1922.  
  1923.  
  1924.  
  1925.  
  1926.                 Shareware Installation System Lite     PAGE 36
  1927.  
  1928.        What we have done, now, is provide a base path for the BIGACE 
  1929.        system. Upon that, we can add our other directories. Let's 
  1930.        assume, that the above has passed thru, that is, that the target 
  1931.        drive met our minimum size, and the path does NOT yet exist. In 
  1932.        that case, we can create the base directory.
  1933.  
  1934.        MKDIR
  1935.  
  1936.        This built in function, unlike its namesake, MKDIR, in DOS, 
  1937.        requires no parameters. This is one of the reasons why SIS LITE 
  1938.        is so TINY ! In all cases, MKDIR, will create the directory 
  1939.        specified by the SETPTH function, and which resides in the 
  1940.        variable, thus created, PTH. In parallel to this, it is also 
  1941.        REQUIRED, that the target drive has been set. For our example, 
  1942.        this of course is true.
  1943.  
  1944.        Upon using the above function, the new directory on the target 
  1945.        drive will be @PTH, or what ever the user plugs in. For our 
  1946.        discussion, let's assume, that the user has supplied us with 
  1947.        drive C, and the base path of BIGACE, our suggested default. Let 
  1948.        us also assume that the user started from the root, so that the 
  1949.        new path becomes "C:\BIGACE".
  1950.  
  1951.        Now that we have a drive and base directory, we can start 
  1952.        installing files. Our first clump of files belong in the base 
  1953.        directory "BIGACE", so we need only check that the correct disk 
  1954.        is inserted into the source drive. SIS LITE has provided for this 
  1955.        test, with the function IFEXIST, so lets do it.
  1956.  
  1957.        :TST1
  1958.        CLR 11 6 16 76 @COLR
  1959.        IFEXIST @SRC:@SPTH\BIGACE1.EXE GOTO CPY1
  1960.  
  1961.        This command line, will cause SIS LITE to branch to the label 
  1962.        CPY1 if the source drive and path contain the file BIGACE1.EXE . 
  1963.        As stated early, in this section, BIGACE1.EXE is one of the two 
  1964.        files belonging in the base directory. We have now come upon 
  1965.        another built in feature of SIS LITE. SIS LITE automatically sets 
  1966.        the two variables, "SRC" and "SPTH" to the correct source drive 
  1967.        and path. Thus, if the source is drive A (which for our use, we 
  1968.        will), and the source path is "\" {root} (and we will), then this 
  1969.        line expects to find "A:\BIGACE1.EXE", and if so, will branch to 
  1970.        the label "CPY1". We MUST now provide instructions for SIS LITE 
  1971.        to perform, if the user has inserted a different disk. NOTE, we 
  1972.        have also precleared our window, to save us from having to 
  1973.        perform this task twice, once for the case of BIGACE1.EXE 
  1974.        existing an us branching to label "CPY1", and the other case of 
  1975.        when the following commands will be executed.
  1976.  
  1977.  
  1978.        {continued next page}
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.                 Shareware Installation System Lite     PAGE 37
  1987.  
  1988.        LOCATE 12 7
  1989.        WRITE Please insert BIGACE installation disk #1, into drive @SRC
  1990.        LOCATE 13 7
  1991.        WRITE If the correct disk is installed, please press ENTER
  1992.        LOCATE 14 7
  1993.        WRITE if you wish to abort and retry later, press ESCAPE NOW !
  1994.        LOCATE 15 7
  1995.        WRITE Waiting for your response [ ]
  1996.        LOCATE 15 34
  1997.        CR
  1998.        IFERR 27 GOTO ABORT
  1999.        GOTO TST1
  2000.  
  2001.        Notice the last line, a branch instruction to the above label 
  2002.        (previous page) TST1, which began the set in commands, prior to 
  2003.        making the IFEXIST test.
  2004.  
  2005.        In this code section, we display a nice message, about inserting 
  2006.        disk one into the source drive. However, this example message 
  2007.        structure, can be both shortened and lengthed. In the shortening 
  2008.        approach, we could simply have said, "requires disk #1, press 
  2009.        ENTER to continue, ESCAPE to abort". The lengthed version might 
  2010.        go on to provide the user with notes to escape out if this has 
  2011.        been displayed more than once.
  2012.  
  2013.        The function CR, simply waits for either an ESCAPE key or ENTER 
  2014.        key press. All other key presses simply cause the PC speaker to 
  2015.        beep. Just below the CR function, we test the ERR (errorlevel) 
  2016.        variable to see if the user pressed the ESCAPE key, and if so, 
  2017.        branch to the ABORT label, otherwise, the branch instruciton GOTO 
  2018.        TST1 is performed, and we begin a loop, which is NOT broken, 
  2019.        until either the correct file is found, or the user aborts by 
  2020.        pressing the ESCAPE key.
  2021.  
  2022.        Once the user has the correct disk installed, which we will 
  2023.        assume is the case, the following instruction is executed.
  2024.  
  2025.        :CPY1
  2026.        BIGACE1.EXE @DRV:@PTH\
  2027.  
  2028.        In our example, all our installation files are self extracting 
  2029.        files, similar to the LHA variety, which can extract to a target 
  2030.        drive and directory.
  2031.  
  2032.        In the above, all files in the BIGACE1.EXE, self compressed file 
  2033.        will extract to the target "C:\BIGACE".
  2034.  
  2035.        This same sequenc can be used for BIGACE2.EXE, like so :
  2036.  
  2037.  
  2038.        {continued next page}
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.                 Shareware Installation System Lite     PAGE 38
  2047.  
  2048.        :TST2
  2049.        CLR 11 6 16 76 @COLR
  2050.        IFEXIST @SRC:@SPTH\BIGACE2.EXE GOTO CPY2
  2051.        LOCATE 12 7
  2052.        WRITE Please insert BIGACE installation disk #2, into drive @SRC
  2053.        LOCATE 13 7
  2054.        WRITE If the correct disk is installed, please press ENTER
  2055.        LOCATE 14 7
  2056.        WRITE if you wish to abort and retry later, press ESCAPE NOW !
  2057.        LOCATE 15 7
  2058.        WRITE Waiting for your response [ ]
  2059.        LOCATE 15 34
  2060.        CR
  2061.        IFERR 27 GOTO ABORT
  2062.        GOTO TST2
  2063.        :CPY2
  2064.        BIGACE2.EXE @DRV:@PTH\
  2065.  
  2066.        All we've done, is change the "1's", from our installation of 
  2067.        BIGACE1.EXE, to a "2" ! Since most text editors now provide a 
  2068.        block copy function, this code can quickly be created, from the 
  2069.        first part. Since the above is a clone of the install part one, 
  2070.        we need not duplicate our explanation, and we move on to 
  2071.        installation of part 3 (BIGACE3.EXE) which will be in another 
  2072.        directory off of the base directory of BIGACE !
  2073.  
  2074.        Our easyest method of installing the last files, will be to first 
  2075.        logon to the target drive and directory, and begin making the 
  2076.        required new directories from there.
  2077.  
  2078.        @DRV:
  2079.        CD @PTH
  2080.  
  2081.        Actually, these two functions are very close to the DOS 
  2082.        counterparts! The first line, simply sets a new drive via the 
  2083.        variable DRV, which contains the target drive name. The second 
  2084.        line performs the change directory function, and changes to the 
  2085.        target path, contained in the variable PTH. We now use a set of 
  2086.        two SIS LITE functions, to set a new target path.
  2087.  
  2088.        We have set the target path to the new path of "SYSTEM", and 
  2089.        since it's NOT prefixed with the "\" character, SIS LITE will 
  2090.        create a new path off the current directory, which is BIGACE, 
  2091.        thus ending up with a true path of "\BIGACE\SYSTEM", which is 
  2092.        what we want !
  2093.  
  2094.        We can now tell SIS LITE to make the directory. We need not test 
  2095.        for the existance of this directory if we don't want to. If the 
  2096.        directory exists, it exists, we will simply replace any files 
  2097.        there-in, with new ones.
  2098.  
  2099.        MKDIR
  2100.        CD @PTH
  2101.  
  2102.  
  2103.  
  2104.  
  2105.  
  2106.                 Shareware Installation System Lite     PAGE 39
  2107.  
  2108.        We now have made the directory and changed to it. All that left, 
  2109.        is to verify the correct source disk is inserted and copy files. 
  2110.        Checking the source disk is just like the previous, so use your 
  2111.        block copy function to copy the block as follows, changing the 
  2112.        previous "2's" to a "3".
  2113.  
  2114.        :TST3
  2115.        CLR 11 6 16 76 @COLR
  2116.        IFEXIST @SRC:@SPTH\BIGACE3.EXE GOTO CPY3
  2117.        LOCATE 12 7
  2118.        WRITE Please insert BIGACE installation disk #3, into drive @SRC
  2119.        LOCATE 13 7
  2120.        WRITE If the correct disk is installed, please press ENTER
  2121.        LOCATE 14 7
  2122.        WRITE if you wish to abort and retry later, press ESCAPE NOW !
  2123.        LOCATE 15 7
  2124.        WRITE Waiting for your response [ ]
  2125.        LOCATE 15 34
  2126.        CR
  2127.        IFERR 27 GOTO ABORT
  2128.        GOTO TST3
  2129.        :CPY3
  2130.        BIGACE3.EXE
  2131.  
  2132.        This time, we don't sufix the selfextracting file with the drive 
  2133.        and path, as we are there already!
  2134.  
  2135.        We need only go back one directory level using the CD function
  2136.  
  2137.        CD ..
  2138.  
  2139.        and repeat the steps as for installing disk #3, but using the 
  2140.        path TOOLS for disk #4. Again, we simply block copy the above 
  2141.        block, edit out the "3's", replacing with "4's".
  2142.  
  2143.        SETLIN TOOLS
  2144.        SETPTH
  2145.        MKDIR
  2146.        CD @PTH
  2147.  
  2148.        {continued next page}
  2149.  
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.                 Shareware Installation System Lite     PAGE 40
  2156.  
  2157.        :TST4
  2158.        CLR 11 6 16 76 @COLR
  2159.        IFEXIST @SRC:@SPTH\BIGACE4.EXE GOTO CPY4
  2160.        LOCATE 12 7
  2161.        WRITE Please insert BIGACE installation disk #4, into drive @SRC
  2162.        LOCATE 13 7
  2163.        WRITE If the correct disk is installed, please press ENTER
  2164.        LOCATE 14 7
  2165.        WRITE if you wish to abort and retry later, press ESCAPE NOW !
  2166.        LOCATE 15 7
  2167.        WRITE Waiting for your response [ ]
  2168.        LOCATE 15 34
  2169.        CR
  2170.        IFERR 27 GOTO ABORT
  2171.        GOTO TST4
  2172.        :CPY4
  2173.        BIGACE4.EXE
  2174.  
  2175.        Installing disk #5, is just a repeat of the above, but, we change 
  2176.        the path name to "CONFIG", the "4's" become "5's"
  2177.  
  2178.  
  2179.        SETLIN TOOLS
  2180.        SETPTH
  2181.        MKDIR
  2182.        CD @PTH
  2183.        :TST5
  2184.        CLR 11 6 16 76 @COLR
  2185.        IFEXIST @SRC:@SPTH\BIGACE5.EXE GOTO CPY5
  2186.        LOCATE 12 7
  2187.        WRITE Please insert BIGACE installation disk #5, into drive @SRC
  2188.        LOCATE 13 7
  2189.        WRITE If the correct disk is installed, please press ENTER
  2190.        LOCATE 14 7
  2191.        WRITE if you wish to abort and retry later, press ESCAPE NOW !
  2192.        LOCATE 15 7
  2193.        WRITE Waiting for your response [ ]
  2194.        LOCATE 15 34
  2195.        CR
  2196.        IFERR 27 GOTO ABORT
  2197.        GOTO TST5
  2198.        :CPY5
  2199.        BIGACE5.EXE
  2200.  
  2201.        At this point, BIGACE is installed on the user system (at leaste 
  2202.        the files are there).  For our case, let's suppose that that's 
  2203.        all there is too it.. Our next step, is to simply announce that 
  2204.        the system is ready to go, and suggest how to start the program.
  2205.  
  2206.        First, lets change back to the base directory, which contains the 
  2207.        start up module for BIGACE.
  2208.  
  2209.        CD ..
  2210.  
  2211.  
  2212.  
  2213.  
  2214.  
  2215.                 Shareware Installation System Lite     PAGE 41
  2216.  
  2217.        Now, clear the entire screen and display a closing message..
  2218.  
  2219.        CLR
  2220.        LOCATE 1 1
  2221.        WRITE Installation complete !
  2222.        LOCATE 3 1
  2223.        WRITE To start BIGACE, TYPE BIGACE
  2224.        LOCATE 4 1
  2225.        WRITE to read BIGACE documnetation type VIEW BIGACE.DOC
  2226.        LOCATE 6 1
  2227.  
  2228.        Basically, that's all there is to it. We've installed a multi-
  2229.        disk, multi-path system ! There are of course, variations on 
  2230.        this, such as auto-starting the BIGACE program, checking for 
  2231.        errorlevels after each selfextracting program, etc...
  2232.  
  2233.        We have provided a fully functional version of the example 
  2234.        presented in this section, as BIGACE.SIS ! We have NOT provided 
  2235.        the files BIGACE1.EXE thru BIGACE5.EXE, the selfextracting files. 
  2236.        You can create these yourself using most compression programs. We 
  2237.        suggest using LHA due to it's capability. For a copy of the lates 
  2238.        version of LHA you can send $3 to us, see REG.DOC for address, 
  2239.        plus postage, or save postage, and get it with your copy of 
  2240.        registration of SIS LITE, for just $3 ! Postage for us orders is 
  2241.        $2, all others please include $5.
  2242.  
  2243.